package cn.disicn.controller;

import java.util.Date;
import org.apache.commons.lang3.StringUtils;
import cn.disicn.common.Const;
import cn.disicn.common.ServerResponse;
import cn.disicn.model.BizJobsType;
import com.jfinal.core.Controller;
import com.jfinal.plugin.activerecord.Page;

/**
 * @author zjk
 * @date 2017年12月28日 下午4:59:03
 * @desc 任务类型管理
 */
public class BizJobsTypeController extends Controller {

    private static final BizJobsType bizJobstype = new BizJobsType();

    /**
     * @desc 查询任务类型
     */
    public void index() {
        Integer pageNum = getParaToInt("pageNum");
        Integer pageSize = getParaToInt("pageSize");
        if (pageNum != null && pageSize != null && pageNum > 0 && pageSize > 0) {
            ServerResponse<Page<BizJobsType>> response = bizJobstype.getBizJobsType(pageNum, pageSize);
            if (response.isSuccess()) {
                renderJson(response.getData());
                return;
            }
        }
        renderJson(ServerResponse.createByErrorMsg(Const.ErrorResult.PARAMETER_ERROR));
    }

    /**
     * @desc 删除任务类型
     */
    public void delBizJobsType() {
        String id = getPara("id");
        if (!StringUtils.isBlank(id) && Integer.parseInt(id) != 0) {
            renderJson(bizJobstype.delBizJobsType(id));
            return;
        }
        renderJson(ServerResponse.createByErrorMsg(Const.ErrorResult.PARAMETER_ERROR));
    }

    /**
     * @desc 添加任务类型
     */
    public void addBizJobsType() {
        String name = getPara("name");
        if (!StringUtils.isBlank(name)) {
            ServerResponse<String> response = bizJobstype.valiName(name);
            if (response.isSuccess()) {
                bizJobstype.setName(name);
                bizJobstype.setUpdateTime(new Date());
                renderJson(bizJobstype.addBizJobsType(bizJobstype));
            } else {
                renderJson(response);
            }
            return;
        }
        renderJson(ServerResponse.createByErrorMsg(Const.ErrorResult.PARAMETER_ERROR));
    }
}
